home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-08-10 | 33.8 KB | 935 lines | [TEXT/MPS ] |
- (*
- File: AppleTalk.mod
-
- Contains: AppleTalk Interfaces.
-
- Version: Technology: System 7.5
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs.applelink.apple.com
- AppleLink: APPLE.BUGS
-
- *)
-
- (*$IF UNDEFINED OLDROUTINENAMES*)
- (*$SET OLDROUTINENAMES FALSE*)
- (*$END*)
- (*$TAGS-*)
- (*$CALLING PASCAL*)
- MODULE AppleTalk;
-
- IMPORT SYSTEM, Types, OSUtils;
-
- (* $PUSH*)
- (* $ALIGN MAC68K*)
- (* $LibExport+*)
-
- CONST
- (* Driver unit and reference numbers (ADSP is dynamic) *)
- mppUnitNum* = 9; (* MPP unit number *)
- atpUnitNum* = 10; (* ATP unit number *)
- xppUnitNum* = 40; (* XPP unit number *)
- mppRefNum* = -10; (* MPP reference number *)
- atpRefNum* = -11; (* ATP reference number *)
- xppRefNum* = -41; (* XPP reference number *)
- (* .MPP csCodes *)
- lookupReply* = 242; (* This command queued to ourself *)
- writeLAP* = 243; (* Write out LAP packet *)
- detachPH* = 244; (* Detach LAP protocol handler *)
- attachPH* = 245; (* Attach LAP protocol handler *)
- writeDDP* = 246; (* Write out DDP packet *)
- closeSkt* = 247; (* Close DDP socket *)
- openSkt* = 248; (* Open DDP socket *)
- loadNBP* = 249; (* Load NBP command-executing code *)
- lastResident* = 249; (* Last resident command *)
- confirmName* = 250; (* Confirm name *)
- lookupName* = 251; (* Look up name on internet *)
- removeName* = 252; (* Remove name from Names Table *)
- registerName* = 253; (* Register name in Names Table *)
- killNBP* = 254; (* Kill outstanding NBP request *)
-
- unloadNBP* = 255; (* Unload NBP command code *)
- setSelfSend* = 256; (* MPP*: Set to allow writes to self *)
- SetMyZone* = 257; (* Set my zone name *)
- GetATalkInfo* = 258; (* get AppleTalk information *)
- ATalkClosePrep* = 259; (* AppleTalk close query *)
- (* .ATP csCodes *)
- nSendRequest* = 248; (* NSendRequest code *)
- relRspCB* = 249; (* Release RspCB *)
- closeATPSkt* = 250; (* Close ATP socket *)
- addResponse* = 251; (* Add response code | Require open skt *)
- sendResponse* = 252; (* Send response code *)
- getRequest* = 253; (* Get request code *)
- openATPSkt* = 254; (* Open ATP socket *)
- sendRequest* = 255; (* Send request code *)
- relTCB* = 256; (* Release TCB *)
- killGetReq* = 257; (* Kill GetRequest *)
- killSendReq* = 258; (* Kill SendRequest *)
- killAllGetReq* = 259; (* Kill all getRequests for a skt *)
- (* .XPP csCodes *)
- openSess* = 255; (* Open session *)
- closeSess* = 254; (* Close session *)
- userCommand* = 253; (* User command *)
-
- userWrite* = 252; (* User write *)
- getStatus* = 251; (* Get status *)
- afpCall* = 250; (* AFP command (buffer has command code) *)
- getParms* = 249; (* Get parameters *)
- abortOS* = 248; (* Abort open session request *)
- closeAll* = 247; (* Close all open sessions *)
- xCall* = 246; (* .XPP extended calls *)
- (* Transition Queue transition types *)
- ATTransOpen* = 0; (*AppleTalk has opened*)
- ATTransClose* = 2; (*AppleTalk is about to close*)
- ATTransClosePrep* = 3; (*Is it OK to close AppleTalk ?*)
- ATTransCancelClose* = 4; (*Cancel the ClosePrep transition*)
- afpByteRangeLock* = 1; (*AFPCall command codes*)
- afpVolClose* = 2; (*AFPCall command codes*)
- afpDirClose* = 3; (*AFPCall command codes*)
- afpForkClose* = 4; (*AFPCall command codes*)
- afpCopyFile* = 5; (*AFPCall command codes*)
- afpDirCreate* = 6; (*AFPCall command codes*)
- afpFileCreate* = 7; (*AFPCall command codes*)
- afpDelete* = 8; (*AFPCall command codes*)
- afpEnumerate* = 9; (*AFPCall command codes*)
-
- afpFlush* = 10; (*AFPCall command codes*)
- afpForkFlush* = 11; (*AFPCall command codes*)
- afpGetDirParms* = 12; (*AFPCall command codes*)
- afpGetFileParms* = 13; (*AFPCall command codes*)
- afpGetForkParms* = 14; (*AFPCall command codes*)
- afpGetSInfo* = 15; (*AFPCall command codes*)
- afpGetSParms* = 16; (*AFPCall command codes*)
- afpGetVolParms* = 17; (*AFPCall command codes*)
- afpLogin* = 18; (*AFPCall command codes*)
- afpContLogin* = 19; (*AFPCall command codes*)
- afpLogout* = 20; (*AFPCall command codes*)
- afpMapID* = 21; (*AFPCall command codes*)
- afpMapName* = 22; (*AFPCall command codes*)
- afpMove* = 23; (*AFPCall command codes*)
- afpOpenVol* = 24; (*AFPCall command codes*)
- afpOpenDir* = 25; (*AFPCall command codes*)
- afpOpenFork* = 26; (*AFPCall command codes*)
- afpRead* = 27; (*AFPCall command codes*)
- afpRename* = 28; (*AFPCall command codes*)
- afpSetDirParms* = 29; (*AFPCall command codes*)
-
- afpSetFileParms* = 30; (*AFPCall command codes*)
- afpSetForkParms* = 31; (*AFPCall command codes*)
- afpSetVolParms* = 32; (*AFPCall command codes*)
- afpWrite* = 33; (*AFPCall command codes*)
- afpGetFlDrParms* = 34; (*AFPCall command codes*)
- afpSetFlDrParms* = 35; (*AFPCall command codes*)
- afpDTOpen* = 48; (*AFPCall command codes*)
- afpDTClose* = 49; (*AFPCall command codes*)
- afpGetIcon* = 51; (*AFPCall command codes*)
- afpGtIcnInfo* = 52; (*AFPCall command codes*)
- afpAddAPPL* = 53; (*AFPCall command codes*)
- afpRmvAPPL* = 54; (*AFPCall command codes*)
- afpGetAPPL* = 55; (*AFPCall command codes*)
- afpAddCmt* = 56; (*AFPCall command codes*)
- afpRmvCmt* = 57; (*AFPCall command codes*)
- afpGetCmt* = 58; (*AFPCall command codes*)
- afpAddIcon* = 192; (*Special code for ASP Write commands*)
- xppLoadedBit* = 5; (* XPP bit in PortBUse *)
- scbMemSize* = 192; (* Memory.Size of memory for SCB *)
- xppFlagClr* = 0; (* Cs for AFPCommandBlock *)
-
- xppFlagSet* = 128; (* StartEndFlag & NewLineFlag fields. *)
- lapSize* = 20;
- ddpSize* = 26;
- nbpSize* = 26;
- atpSize* = 56;
- atpXOvalue* = 32; (*ATP exactly-once bit *)
- atpEOMvalue* = 16; (*ATP End-Of-Message bit *)
- atpSTSvalue* = 8; (*ATP Send-Transmission-Status bit *)
- atpTIDValidvalue* = 2; (*ATP trans. AIFF.ID valid bit *)
- atpSendChkvalue* = 1; (*ATP send checksum bit *)
- zipGetLocalZones* = 5;
- zipGetZoneList* = 6;
- zipGetMyZone* = 7;
- LAPMgrPtr* = $B18; (*Entry point for LAP Manager*)
- LAPMgrCall* = 2; (*Offset to LAP routines*)
- LAddAEQ* = 23; (*LAPAddATQ routine selector*)
- LRmvAEQ* = 24; (*LAPRmvATQ routine selector*)
-
- tLAPRead* = 0;
- tLAPWrite* = 1;
- tDDPRead* = 2;
- tDDPWrite* = 3;
- tNBPLookup* = 4;
- tNBPConfirm* = 5;
- tNBPRegister* = 6;
- tATPSndRequest* = 7;
- tATPGetRequest* = 8;
- tATPSdRsp* = 9;
- tATPAddRsp* = 10;
- tATPRequest* = 11;
- tATPResponse* = 12;
-
-
- TYPE
- ABCallType* = Types.SInt8;
-
-
- CONST
- lapProto* = 0;
- ddpProto* = 1;
- nbpProto* = 2;
- atpProto* = 3;
-
-
- TYPE
- ABProtoType* = Types.UInt8;
-
- ABByte* = Types.Byte;
-
- LAPAdrBlock* = (*ΔΔPACKEDΔΔ*) RECORD
- dstNodeID*: Types.UInt8;
- srcNodeID*: Types.UInt8;
- lapProtType*: ABByte;
- filler*: Types.UInt8; (* Filler for proper byte alignment*)
- END;
-
- ATQEntryPtr* = POINTER TO ATQEntry;
-
- ATalkTransitionEventProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (eventCode: LONGINT; qElem: ATQEntryPtr; eventParameter: (*ΔΔUNIVΔΔ*) Types.Ptr): LONGINT;
- ATalkTransitionEventUPP* = Types.UniversalProcPtr;
-
- ATalkTransitionEvent* = ATalkTransitionEventUPP;
-
- ATQEntry* = RECORD
- qLink*: OSUtils.QElemPtr (*ΔΔ POINTER TO ATQEntry*); (*next queue entry*)
- qType*: INTEGER; (*queue type*)
- CallAddr*: ATalkTransitionEventUPP; (*your routine descriptor*)
- END;
-
- AddrBlock* = RECORD
- aNet*: Types.UInt16;
- aNode*: Types.SInt8; (* UInt8 *)
- aSocket*: Types.SInt8; (* UInt8 *)
- END;
-
- (* Real definition of EntityName is 3 (*ΔΔPACKEDΔΔ*) strings of any length (32 is just an example). No
- offests for Asm since each String address must be calculated by adding length byte to last string ptr.
- In Pascal, String(32) will be 34 bytes long since fields never start on an odd byte unless they are
- only a byte long. So this will generate correct looking interfaces for Pascal and C, but they will not
- be the same, which is OK since they are not used. *)
- EntityName* = RECORD
- objStr*: Types.Str32;
- pad1*: Types.SInt8; (*Types.Str32's aligned on even word boundries.*)
- typeStr*: Types.Str32;
- pad2*: Types.SInt8;
- zoneStr*: Types.Str32;
- pad3*: Types.SInt8;
- END;
-
- EntityPtr* = POINTER TO EntityName;
-
- RetransType* = (*ΔΔPACKEDΔΔ*) RECORD
- retransInterval*: Types.UInt8;
- retransCount*: Types.UInt8;
- END;
-
- BDSElement* = RECORD
- buffSize*: INTEGER;
- buffPtr*: Types.Ptr;
- dataSize*: INTEGER;
- userBytes*: LONGINT;
- END;
-
- BDSType* = ARRAY 8 (*ΔΔ[0..7]ΔΔ*) OF BDSElement;
-
- BDSPtr* = POINTER TO BDSElement;
-
- BitMapType* = SHORTINT (*ΔΔ PACKED ARRAY [0..7] OF BOOLEAN*);
-
- ATProtRec* = RECORD (*ΔΔ NEW*)
- abOpcode*: ABCallType;
- filler*: Types.SInt8; (* Filler for proper byte alignment*)
- abResult*: INTEGER;
- abUserReference*: LONGINT;
- END;
-
- ATLAPRec* = RECORD(ATProtRec)
- (*ΔΔ abOpcode*: ABCallType;
- filler*: Types.SInt8; (* Filler for proper byte alignment*)
- abResult*: INTEGER;
- abUserReference*: LONGINT;*)
- lapAddress*: LAPAdrBlock;
- lapReqCount*: INTEGER;
- lapActCount*: INTEGER;
- lapDataPtr*: Types.Ptr;
- END;
-
- ATLAPRecPtr* = POINTER TO ATLAPRec;
- ATLAPRecHandle* = HANDLE TO ATLAPRec (*ΔΔ POINTER TO ATLAPRecPtr*);
-
- ATDDPRec* = RECORD(ATProtRec)
- (*ΔΔ abOpcode*: ABCallType;
- filler*: Types.SInt8; (* Filler for proper byte alignment*)
- abResult*: INTEGER;
- abUserReference*: LONGINT;*)
- ddpType*: INTEGER;
- ddpSocket*: INTEGER;
- ddpAddress*: AddrBlock;
- ddpReqCount*: INTEGER;
- ddpActCount*: INTEGER;
- ddpDataPtr*: Types.Ptr;
- ddpNodeID*: INTEGER;
- END;
-
- ATDDPRecPtr* = POINTER TO ATDDPRec;
- ATDDPRecHandle* = HANDLE TO ATDDPRec (*ΔΔ POINTER TO ATDDPRecPtr*);
-
- ATNBPRec* = RECORD(ATProtRec)
- (*ΔΔ abOpcode*: ABCallType;
- filler*: Types.SInt8; (* Filler for proper byte alignment*)
- abResult*: INTEGER;
- abUserReference*: LONGINT;*)
- nbpEntityPtr*: EntityPtr;
- nbpBufPtr*: Types.Ptr;
- nbpBufSize*: INTEGER;
- nbpDataField*: INTEGER;
- nbpAddress*: AddrBlock;
- nbpRetransmitInfo*: RetransType;
- END;
-
- ATNBPRecPtr* = POINTER TO ATNBPRec;
- ATNBPRecHandle* = HANDLE TO ATNBPRec (*ΔΔ POINTER TO ATNBPRecPtr*);
-
- ATATPRec* = RECORD(ATProtRec)
- (*ΔΔ abOpcode*: ABCallType;
- filler1*: Types.SInt8; (* Filler for proper byte alignment*)
- abResult*: INTEGER;
- abUserReference*: LONGINT;*)
- atpSocket*: INTEGER;
- atpAddress*: AddrBlock;
- atpReqCount*: INTEGER;
- atpDataPtr*: Types.Ptr;
- atpRspBDSPtr*: BDSPtr;
- atpBitMap*: BitMapType;
- filler2*: Types.SInt8; (* UInt8 *) (* Filler for proper byte alignment*)
- atpTransID*: INTEGER;
- atpActCount*: INTEGER;
- atpUserData*: LONGINT;
- atpXO*: BOOLEAN;
- atpEOM*: BOOLEAN;
- atpTimeOut*: INTEGER;
- atpRetries*: INTEGER;
- atpNumBufs*: INTEGER;
- atpNumRsp*: INTEGER;
- atpBDSSize*: INTEGER;
- atpRspUData*: LONGINT;
- atpRspBuf*: Types.Ptr;
- atpRspSize*: INTEGER;
- END;
-
- ATATPRecPtr* = POINTER TO ATATPRec;
- ATATPRecHandle* = HANDLE TO ATATPRec (*ΔΔ POINTER TO ATATPRecPtr*);
-
- AFPCommandBlock* = (*ΔΔPACKEDΔΔ*) RECORD
- cmdByte*: Types.UInt8;
- startEndFlag*: Types.UInt8;
- forkRefNum*: INTEGER;
- rwOffset*: LONGINT;
- reqCount*: LONGINT;
- newLineFlag*: Types.UInt8;
- newLineChar*: CHAR;
- END;
-
- MPPPBPtr* = POINTER TO MPPParamBlock;
-
- ATPPBPtr* = POINTER TO ATPParamBlock;
-
- XPPParmBlkPtr* = POINTER TO XPPParamBlock;
-
- (*
- MPPCompletionProcPtr uses register based parameters on the 68k and cannot
- be written in or called from a high-level language without the help of
- mixed mode or assembly glue.
-
- In:
- => thePBptr A0.L
- *)
- MPPCompletionProcPtr* = Types.Register68kProcPtr; (* register PROCEDURE MPPCompletion*(thePBptr: MPPPBPtr); *)
- (*
- ATPCompletionProcPtr uses register based parameters on the 68k and cannot
- be written in or called from a high-level language without the help of
- mixed mode or assembly glue.
-
- In:
- => thePBptr A0.L
- *)
- ATPCompletionProcPtr* = Types.Register68kProcPtr; (* register PROCEDURE ATPCompletion*(thePBptr: ATPPBPtr); *)
- (*
- XPPCompletionProcPtr uses register based parameters on the 68k and cannot
- be written in or called from a high-level language without the help of
- mixed mode or assembly glue.
-
- In:
- => thePBptr A0.L
- *)
- XPPCompletionProcPtr* = Types.Register68kProcPtr; (* register PROCEDURE XPPCompletion*(thePBptr: XPPParmBlkPtr); *)
- (*
- AttnRoutineProcPtr uses register based parameters on the 68k and cannot
- be written in or called from a high-level language without the help of
- mixed mode or assembly glue.
-
- In:
- => sessRefnum D0.W
- => attnBytes D1.W
- *)
- AttnRoutineProcPtr* = Types.Register68kProcPtr; (* register PROCEDURE AttnRoutine*(sessRefnum: INTEGER; attnBytes*: INTEGER); *)
- MPPCompletionUPP* = Types.UniversalProcPtr;
- ATPCompletionUPP* = Types.UniversalProcPtr;
- XPPCompletionUPP* = Types.UniversalProcPtr;
- AttnRoutineUPP* = Types.UniversalProcPtr;
-
- WDSElement* = RECORD
- entryLength*: INTEGER;
- entryPtr*: Types.Ptr;
- END;
-
- NTElement* = RECORD
- nteAddress*: AddrBlock; (*network address of entity*)
- filler*: Types.SInt8;
- entityData*: (*ΔΔPACKEDΔΔ*) ARRAY 99 (*ΔΔ[0..98]ΔΔ*) OF Types.SInt8; (*Object, Type & Memory.Zone*)
- END;
-
- NamesTableEntry* = RECORD
- qNext*: Types.Ptr; (*ptr to next NTE*)
- nt*: NTElement;
- END;
-
- MPPProtocolHandlerProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (SCCAddr1: Types.Ptr; SCCAddr2: Types.Ptr; MPPLocalVars: Types.Ptr; nextFreeByteInRHA: Types.Ptr; ReadPacketAndReadRestPtr: Types.Ptr; numBytesLeftToReadInPacket: INTEGER): BOOLEAN;
- DDPSocketListenerProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (SCCAddr1: Types.Ptr; SCCAddr2: Types.Ptr; MPPLocalVars: Types.Ptr; nextFreeByteInRHA: Types.Ptr; ReadPacketAndReadRestPtr: Types.Ptr; packetDestinationNumber: Types.ByteParameter; numBytesLeftToReadInPacket: INTEGER): BOOLEAN;
- MPPProtocolHandlerUPP* = Types.UniversalProcPtr;
- DDPSocketListenerUPP* = Types.UniversalProcPtr;
-
- MPPParamBlock* = RECORD(OSUtils.QElem)
- (*ΔΔ qLink*: OSUtils.QElemPtr (*ΔΔ POINTER TO OSUtils.QElem*);
- qType*: INTEGER;*)
- ioTrap*: INTEGER;
- ioCmdAddr*: Types.Ptr;
- ioCompletion*: ATPCompletionUPP;
- ioResult*: Types.OSErr;
- userData*: LONGINT;
- reqTID*: INTEGER;
- ioRefNum*: INTEGER;
- csCode*: INTEGER;
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- LAPWPBPtr* = POINTER TO LAPWriteParamBlock;
- LAPWriteParamBlock* = RECORD(MPPParamBlock)
- filler0*: INTEGER;
- wdsPointer*: Types.Ptr;
- (*ΔΔ );
- 1: ( *)
- END;
- PHPBPtr* = POINTER TO ProtocolHandlerParamBlock;
- ProtocolHandlerParamBlock* = RECORD(MPPParamBlock)
- protType*: Types.SInt8; (* UInt8 *)
- filler*: Types.SInt8; (* UInt8 *)
- handler*: MPPProtocolHandlerUPP;
- (*ΔΔ );
- 2: ( *)
- END;
- SocketPBPtr* = POINTER TO SocketDDPParamBlock;
- SocketDDPParamBlock* = RECORD(MPPParamBlock)
- socket*: Types.SInt8; (* UInt8 *)
- checksumFlag*: Types.SInt8; (* UInt8 *)
- listener*: DDPSocketListenerUPP;
- (*ΔΔ );
- 3: ( *)
- END;
- NBPPBPtr* = POINTER TO NBPParamBlock;
- NBPParamBlock* = RECORD(MPPParamBlock)
- interval*: Types.SInt8; (* UInt8 *) (*retry interval *)
- count*: Types.SInt8; (* UInt8 *) (*retry count *)
- nbpPtrs*: Types.Ptr;
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- RegisterPBPtr* = POINTER TO RegisterParamBlock;
- RegisterParamBlock* = RECORD(NBPParamBlock)
- verifyFlag*: Types.SInt8; (* UInt8 *)
- filler3*: Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- 1: ( *)
- END;
- LookupPBPtr* = POINTER TO LookupWriteParamBlock;
- LookupWriteParamBlock* = RECORD(NBPParamBlock)
- retBuffPtr*: Types.Ptr;
- retBuffSize*: INTEGER;
- maxToGet*: INTEGER;
- numGotten*: INTEGER;
- (*ΔΔ );
- 2: ( *)
- END;
- ConfirmPBPtr* = POINTER TO ConfirmParamBlock;
- ConfirmParamBlock* = RECORD(NBPParamBlock)
- confirmAddr*: AddrBlock;
- newSocket*: Types.SInt8; (* UInt8 *)
- filler4*: Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- );
- 4: ( *)
- END;
- SelfSendPBPtr* = POINTER TO SelfSendParamBlock;
- SelfSendParamBlock* = RECORD(MPPParamBlock)
- newSelfFlag*: Types.SInt8; (* UInt8 *) (*self-send toggle flag *)
- oldSelfFlag*: Types.SInt8; (* UInt8 *) (*previous self-send state *)
- (*ΔΔ );
- 5: ( *)
- END;
- KillNBPPBPtr* = POINTER TO KillNBPParamBlock;
- KillNBPParamBlock* = RECORD(MPPParamBlock)
- nKillQEl*: Types.Ptr; (*ptr to i/o queue element to cancel *)
- (*ΔΔ );
- 6: ( *)
- END;
- GetATInfoPBPtr* = POINTER TO GetATInfoParamBlock;
- GetATInfoParamBlock* = RECORD(MPPParamBlock)
- version*: INTEGER;
- varsPtr*: Types.Ptr;
- DCEPtr*: Types.Ptr;
- portID*: INTEGER;
- configuration*: LONGINT;
- selfSend*: INTEGER;
- netLo*: INTEGER;
- netHi*: INTEGER;
- ourAdd*: LONGINT;
- routerAddr*: LONGINT;
- numOfPHs*: INTEGER;
- numOfSkts*: INTEGER;
- numNBPEs*: INTEGER;
- nTQueue*: Types.Ptr;
- LAlength*: INTEGER;
- linkAddr*: Types.Ptr;
- zoneName*: Types.Ptr;
- (*ΔΔ );
- 7: ( *)
- END;
- ATClosePrepPBPtr* = POINTER TO ATClosePrepParamBlock;
- ATClosePrepParamBlock* = RECORD(MPPParamBlock)
- appName*: Types.Ptr; (*pointer to application name in buffer*)
- (*ΔΔ );*)
- END;
-
- XPPParamBlock* = RECORD(OSUtils.QElem)
- (*ΔΔ qLink*: OSUtils.QElemPtr (*ΔΔ POINTER TO OSUtils.QElem*);
- qType*: INTEGER;*)
- ioTrap*: INTEGER;
- ioCmdAddr*: Types.Ptr;
- ioCompletion*: XPPCompletionUPP;
- ioResult*: Types.OSErr;
- cmdResult*: LONGINT;
- ioVRefNum*: INTEGER;
- ioRefNum*: INTEGER;
- csCode*: INTEGER;
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- ASPAbortPBPtr* = POINTER TO ASPAbortParamBlock;
- ASPAbortParamBlock* = RECORD(XPPParamBlock)
- abortSCBPtr*: Types.Ptr; (* SCB pointer for AbortOS*)
- (*ΔΔ );
- 1: ( *)
- END;
- ASPSizePBPtr* = POINTER TO ASPSizeParamBlock;
- ASPSizeParamBlock* = RECORD(XPPParamBlock)
- aspMaxCmdSize*: INTEGER;
- aspQuantumSize*: INTEGER;
- numSesss*: INTEGER;
- (*ΔΔ );
- 2: ( *)
- END;
- XPPXPBPtr* = POINTER TO XPPXParamBlock;
- XPPXParamBlock* = RECORD(XPPParamBlock)
- sessRefnum*: INTEGER;
- aspTimeout*: Types.SInt8; (* UInt8 *)
- aspRetry*: Types.SInt8; (* UInt8 *)
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- ASPOpenPBPtr* = POINTER TO ASPOpenParamBlock;
- ASPOpenParamBlock* = RECORD(XPPXParamBlock)
- serverAddr*: AddrBlock;
- scbPointer*: Types.Ptr;
- attnRoutine*: AttnRoutineUPP;
- (*ΔΔ );
- 1: ( *)
- END;
- ASPSubPBPtr* = POINTER TO ASPSubParamBlock;
- ASPSubParamBlock* = RECORD(XPPXParamBlock)
- cbSize*: INTEGER;
- cbPtr*: Types.Ptr;
- rbSize*: INTEGER;
- rbPtr*: Types.Ptr;
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- AFPLoginPBPtr* = POINTER TO AFPLoginParamBlock;
- AFPLoginParamBlock* = RECORD(ASPSubParamBlock)
- afpAddrBlock*: AddrBlock;
- afpSCBPtr*: Types.Ptr;
- afpAttnRoutine*: Types.Ptr;
- (*ΔΔ );
- 1: ( *)
- END;
- ASPEndPBPtr* = POINTER TO ASPEndParamBlock;
- ASPEndParamBlock* = RECORD(ASPSubParamBlock)
- wdSize*: INTEGER;
- wdPtr*: Types.Ptr;
- ccbStart*: ARRAY 296 (*ΔΔ[0..295]ΔΔ*) OF Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- );
- );
- 3: ( *)
- END;
- XCallPBPtr* = POINTER TO XCallParamBlock;
- XCallParamBlock* = RECORD(XPPParamBlock)
- xppSubCode*: INTEGER;
- xppTimeout*: Types.SInt8; (* UInt8 *)
- xppRetry*: Types.SInt8; (* UInt8 *)
- filler1*: INTEGER;
- zipBuffPtr*: Types.Ptr;
- zipNumZones*: INTEGER;
- zipLastFlag*: Types.SInt8; (* UInt8 *)
- filler2*: Types.SInt8; (* UInt8 *)
- zipInfoField*: (*ΔΔPACKEDΔΔ*) ARRAY 70 (*ΔΔ[0..69]ΔΔ*) OF Types.SInt8; (* UInt8 *)
- (*ΔΔ );*)
- END;
-
- ATPParamBlock* = RECORD(OSUtils.QElem)
- (*ΔΔ qLink*: OSUtils.QElemPtr (*ΔΔ POINTER TO OSUtils.QElem*);
- qType*: INTEGER;*)
- ioTrap*: INTEGER;
- ioCmdAddr*: Types.Ptr;
- ioCompletion*: ATPCompletionUPP;
- ioResult*: Types.OSErr;
- userData*: LONGINT;
- reqTID*: INTEGER;
- ioRefNum*: INTEGER;
- csCode*: INTEGER;
- atpSocket*: Types.SInt8; (* UInt8 *)
- atpFlags*: Types.SInt8; (* UInt8 *)
- addrBlock*: AddrBlock;
- reqLength*: INTEGER;
- reqPointer*: Types.Ptr;
- bdsPointer*: Types.Ptr;
- (*ΔΔ CASE INTEGER OF
- 0: ( *)
- END;
- SendRequestPBPtr* = POINTER TO SendRequestParamBlock;
- SendRequestParamBlock* = RECORD(ATPParamBlock)
- numOfBuffs*: Types.SInt8; (* UInt8 *)
- timeOutVal*: Types.SInt8; (* UInt8 *)
- numOfResps*: Types.SInt8; (* UInt8 *)
- retryCount*: Types.SInt8; (* UInt8 *)
- intBuff*: INTEGER;
- TRelTime*: Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- 1: ( *)
- END;
- SendResponsePBPtr* = POINTER TO SendResponseParamBlock;
- SendResponseParamBlock* = RECORD(ATPParamBlock)
- filler*: Types.SInt8; (* UInt8 *)
- bdsSize*: Types.SInt8; (* UInt8 *)
- transID*: INTEGER;
- (*ΔΔ );
- 2: ( *)
- END;
- GetRequestPBPtr* = POINTER TO GetRequestParamBlock;
- GetRequestParamBlock* = RECORD(ATPParamBlock)
- bitMap*: Types.SInt8; (* UInt8 *)
- filler2*: Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- 3: ( *)
- END;
- AddResponsePBPtr* = POINTER TO AddResponseParamBlock;
- AddResponseParamBlock* = RECORD(ATPParamBlock)
- rspNum*: Types.SInt8; (* UInt8 *)
- filler3*: Types.SInt8; (* UInt8 *)
- (*ΔΔ );
- 4: ( *)
- END;
- KillSendReqPBPtr* = POINTER TO KillSendReqParamBlock;
- KillSendReqParamBlock* = RECORD(ATPParamBlock)
- aKillQEl*: Types.Ptr;
- (*ΔΔ );*)
- END;
-
-
- CONST
- uppATalkTransitionEventProcInfo* = $00000FF1; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param): 4 byte result; *)
- uppMPPCompletionProcInfo* = $00009802; (* Register PROCEDURE (4 bytes in A0); *)
- uppATPCompletionProcInfo* = $00009802; (* Register PROCEDURE (4 bytes in A0); *)
- uppXPPCompletionProcInfo* = $00009802; (* Register PROCEDURE (4 bytes in A0); *)
- uppAttnRoutineProcInfo* = $00061002; (* Register PROCEDURE (2 bytes in D0, 2 bytes in D1); *)
- uppMPPProtocolHandlerProcInfo* = $0000007F; (* SPECIAL_CASE_PROCINFO( kSpecialCaseProtocolHandler ) *)
- uppDDPSocketListenerProcInfo* = $0000008F; (* SPECIAL_CASE_PROCINFO( kSpecialCaseSocketListener ) *)
-
- PROCEDURE NewATalkTransitionEventProc*(userRoutine: ATalkTransitionEventProcPtr): ATalkTransitionEventUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewMPPCompletionProc*(userRoutine: MPPCompletionProcPtr): MPPCompletionUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewATPCompletionProc*(userRoutine: ATPCompletionProcPtr): ATPCompletionUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewXPPCompletionProc*(userRoutine: XPPCompletionProcPtr): XPPCompletionUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewAttnRoutineProc*(userRoutine: AttnRoutineProcPtr): AttnRoutineUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewMPPProtocolHandlerProc*(userRoutine: MPPProtocolHandlerProcPtr): MPPProtocolHandlerUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewDDPSocketListenerProc*(userRoutine: DDPSocketListenerProcPtr): DDPSocketListenerUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE CallATalkTransitionEventProc*(eventCode: LONGINT; qElem: ATQEntryPtr; eventParameter: (*ΔΔUNIVΔΔ*) Types.Ptr; userRoutine: ATalkTransitionEventUPP): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallMPPCompletionProc*(thePBptr: MPPPBPtr; userRoutine: MPPCompletionUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters into registers.*)
- (*$END*)
-
- PROCEDURE CallATPCompletionProc*(thePBptr: ATPPBPtr; userRoutine: ATPCompletionUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters into registers.*)
- (*$END*)
-
- PROCEDURE CallXPPCompletionProc*(thePBptr: XPPParmBlkPtr; userRoutine: XPPCompletionUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters into registers.*)
- (*$END*)
-
- PROCEDURE CallAttnRoutineProc*(sessRefnum: INTEGER; attnBytes: INTEGER; userRoutine: AttnRoutineUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters into registers.*)
- (*$END*)
-
- PROCEDURE CallMPPProtocolHandlerProc*(SCCAddr1: Types.Ptr; SCCAddr2: Types.Ptr; MPPLocalVars: Types.Ptr; nextFreeByteInRHA: Types.Ptr; ReadPacketAndReadRestPtr: Types.Ptr; numBytesLeftToReadInPacket: INTEGER; userRoutine: MPPProtocolHandlerUPP): BOOLEAN;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters according to special case conventions.*)
- (*$END*)
-
- PROCEDURE CallDDPSocketListenerProc*(SCCAddr1: Types.Ptr; SCCAddr2: Types.Ptr; MPPLocalVars: Types.Ptr; nextFreeByteInRHA: Types.Ptr; ReadPacketAndReadRestPtr: Types.Ptr; packetDestinationNumber: Types.ByteParameter; numBytesLeftToReadInPacket: INTEGER; userRoutine: DDPSocketListenerUPP): BOOLEAN;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented: Glue to move parameters according to special case conventions.*)
- (*$END*)
-
- PROCEDURE OpenXPP*(VAR xppRefnum: INTEGER): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPOpenSession*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPCloseSession*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPAbortOS*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPGetParms*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPCloseAll*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPUserWrite*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPUserCommand*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ASPGetStatus*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE AFPCommand*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE GetLocalZones*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE GetZoneList*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE GetMyZone*(thePBptr: XPPParmBlkPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PAttachPH*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PDetachPH*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PWriteLAP*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE POpenSkt*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PCloseSkt*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PWriteDDP*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PRegisterName*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PLookupName*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PConfirmName*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PRemoveName*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PSetSelfSend*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PKillNBP*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PGetAppleTalkInfo*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PATalkClosePrep*(thePBptr: MPPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE POpenATPSkt*(thePBptr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PCloseATPSkt*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PSendRequest*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PGetRequest*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PSendResponse*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PAddResponse*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PRelTCB*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PRelRspCB*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PNSendRequest*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PKillSendReq*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PKillGetReq*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPKillAllGetReq*(thePBPtr: ATPPBPtr; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE BuildLAPwds*(wdsPtr: Types.Ptr; dataPtr: Types.Ptr; destHost: INTEGER; prototype: INTEGER; frameLen: INTEGER);
- EXTERNAL PASCAL;
- PROCEDURE BuildDDPwds*(wdsPtr: Types.Ptr; headerPtr: Types.Ptr; dataPtr: Types.Ptr; netAddr: AddrBlock; ddpType: INTEGER; dataLen: INTEGER);
- EXTERNAL PASCAL;
- PROCEDURE NBPSetEntity*(buffer: Types.Ptr; nbpObject: Types.ConstStr32Param; nbpType: Types.ConstStr32Param; nbpZone: Types.ConstStr32Param);
- EXTERNAL PASCAL;
- PROCEDURE NBPSetNTE*(ntePtr: Types.Ptr; nbpObject: Types.ConstStr32Param; nbpType: Types.ConstStr32Param; nbpZone: Types.ConstStr32Param; socket: INTEGER);
- EXTERNAL PASCAL;
- PROCEDURE GetBridgeAddress*(): INTEGER;
- EXTERNAL PASCAL;
- PROCEDURE BuildBDS*(buffPtr: Types.Ptr; bdsPtr: Types.Ptr; buffSize: INTEGER): INTEGER;
- EXTERNAL PASCAL;
- PROCEDURE MPPOpen*(): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPAddATQ*(theATQEntry: ATQEntryPtr): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPRmvATQ*(theATQEntry: ATQEntryPtr): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPLoad*(): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPUnload*(): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPExtract*(theBuffer: Types.Ptr; numInBuf: INTEGER; whichOne: INTEGER; VAR abEntity: EntityName; VAR address: AddrBlock): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE GetNodeAddress*(VAR myNode: INTEGER; VAR myNet: INTEGER): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE IsMPPOpen*(): BOOLEAN;
- EXTERNAL PASCAL;
- PROCEDURE IsATPOpen*(): BOOLEAN;
- EXTERNAL PASCAL;
- PROCEDURE ATEvent*(event: LONGINT; infoPtr: Types.Ptr);
- EXTERNAL PASCAL;
- PROCEDURE ATPreFlightEvent*(event: LONGINT; cancel: LONGINT; infoPtr: Types.Ptr): Types.OSErr;
- EXTERNAL PASCAL;
- (*
- The following routines are obsolete and will not be supported on
- PowerPC. Equivalent functionality is provided by the routines
- above.
- *)
- (*$IF OLDROUTINENAMES AND NOT GENERATINGCFM *)
- PROCEDURE MPPClose*(): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPOpenProtocol*(theLAPType: Types.ByteParameter; protoPtr: Types.Ptr): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPCloseProtocol*(theLAPType: Types.ByteParameter): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPWrite*(abRecord: ATLAPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPRead*(abRecord: ATLAPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE LAPRdCancel*(abRecord: ATLAPRecHandle): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DDPOpenSocket*(VAR theSocket: INTEGER; sktListener: Types.Ptr): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DDPCloseSocket*(theSocket: INTEGER): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DDPRead*(abRecord: ATDDPRecHandle; retCksumErrs: BOOLEAN; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DDPWrite*(abRecord: ATDDPRecHandle; doChecksum: BOOLEAN; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DDPRdCancel*(abRecord: ATDDPRecHandle): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPOpenSocket*(addrRcvd: AddrBlock; VAR atpSocket: INTEGER): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPCloseSocket*(atpSocket: INTEGER): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPSndRequest*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPRequest*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPReqCancel*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPGetRequest*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPSndRsp*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPAddRsp*(abRecord: ATATPRecHandle): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPResponse*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE ATPRspCancel*(abRecord: ATATPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPRegister*(abRecord: ATNBPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPLookup*(abRecord: ATNBPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPConfirm*(abRecord: ATNBPRecHandle; async: BOOLEAN): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPRemove*(abEntity: EntityPtr): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPLoad*(): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE NBPUnload*(): Types.OSErr;
- EXTERNAL PASCAL;
- (*$END*)
-
- (* $ALIGN RESET*)
- (* $POP*)
-
- END AppleTalk.
-